本篇文章是個入門介紹文,主要探討 Liveness 以及 Readiness 這兩個非常實用且重要的觀念。
由於這兩個元件並不是一個基本 Pod 所要的基本元素,所以如果沒有特別研究與使用時,可能也不清楚原來還有這兩種不同的探針可以幫忙我們更友善與彈性的去管理 Pod,準確來說更是 Container 的行為。
過往我們在運行一些應用程式的時候,可能都會有所謂的暖身期,應用程式起來到真正可以提供服務中間會有一些初始化的過程要跑,可能需要幾秒,甚至到一分鐘都有可能。
但是當應用程式給容器化後,對於最上層的管理平台來說,如果我今天只用 Continaer 是否叫起來 當作該應用程式的狀態,實際上遠遠不夠的,就如同上述提到的,會有一些初始化等暖身時間需要等待,而這兩個探針就是從不同角度去幫忙輔助,讓 Kubernetes 有更多方式去判別到底當前 Container 是否已經準備就緒,是否可以認定已經是運行狀態甚至可以接受網路流量
如果對這兩個概念還不熟的,可以參考原文搭配一些範例學習一下
https://devops4solutions.medium.com/kubernetes-pod-health-check-liveness-and-readiness-probe-1118a265c193